 # -*- coding: utf-8 -*-
from qiniu import Auth, put_file, etag, put_data, BucketManager
import qiniu.config

qinuyyumin = "http://qiniu.tfyhyc.cn/"
# 需要填写你的 Access Key 和 Secret Key
access_key = 'qYmnE7bShs9orOO7OJyDBB9Dr-4U6o3TaWO0TkEX'
secret_key = 'PTM4JX2SUAKcXNIHdPQYI-UU_Icot3cMkFAp93wa'


def storage(file_data, is_url=True):
    """

    :param file_data:图片的数据
    :return:
    """
    # 构建鉴权对象
    q = Auth(access_key, secret_key)

    # 要上传的空间
    bucket_name = "python-blog"

    # 生成上传 Token，可以指定过期时间等
    token = q.upload_token(bucket_name, None, 3600)

    ret, info = put_data(token, None, file_data)
    if info.status_code == 200:
        # 表示上传成功
        if is_url:
            return qinuyyumin + ret.get("hash")  # 返回带有网址的地址
        return ret.get("hash")  # 返回经过hash后的值
    else:
        # 表示上传失败
        raise Exception("上传七牛失败")


def del_image(key):
    """
    删除七牛云的图片
    :param key: 图片的名字
    :return:
    """
    # 初始化Auth状态
    q = Auth(access_key, secret_key)
    # 初始化BucketManager
    bucket = BucketManager(q)
    # 你要测试的空间， 并且这个key在你空间中存在
    bucket_name = "python-blog"

    # 删除bucket_name 中的文件 key
    if "http" in key:
        key = key.split("/")[-1]

    ret, info = bucket.delete(bucket_name, key)

    if info.status_code == 200:
        print("删除成功")
        return 0
    else:
        raise Exception("删除失败!")


if __name__ == '__main__':
    pass

    # with open('20150731142456_5VGnZ.png', 'rb') as fp:
    #     image_name = storage(fp.read())
    #
    # print(image_name)
    # del_image("http://qiniu.tfyhyc.cn/FswNtwYkupVDajYBHFqudLpDXcTu")

    pass
